<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>SystemSharp: LongPathFile.cs Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">SystemSharp
   &#160;<span id="projectnumber">0.3</span>
   </div>
   <div id="projectbrief">A system-level modeling framework for designing real-time embedded systems</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Packages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_long_path_file_8cs_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Properties</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Events</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">LongPathFile.cs</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_long_path_file_8cs.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">//     Copyright (c) Microsoft Corporation.  All rights reserved.</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="keyword">using</span> System;</div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="keyword">using</span> System.Diagnostics.CodeAnalysis;</div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="keyword">using</span> System.IO;</div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="keyword">using</span> Microsoft.Experimental.IO.Interop;</div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="keyword">using</span> Microsoft.Win32.SafeHandles;</div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="keyword">namespace </span>Microsoft.Experimental.IO {</div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
<div class="line"><a name="l00014"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html">   14</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">class </span><a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html">LongPathFile</a> {</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a222d379ccf55dd15667184b551cc85fe">   33</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a222d379ccf55dd15667184b551cc85fe">Exists</a>(<span class="keywordtype">string</span> path) {</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;            <span class="keywordtype">bool</span> isDirectory;</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;            <span class="keywordflow">if</span> (LongPathCommon.Exists(path, out isDirectory)) {</div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;                <span class="keywordflow">return</span> !isDirectory;</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;            }</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        }</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ad14fcaf22a5a12a851c9142be8582f8d">   93</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ad14fcaf22a5a12a851c9142be8582f8d">Delete</a>(<span class="keywordtype">string</span> path) {</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;            <span class="keywordtype">string</span> normalizedPath = LongPathCommon.NormalizeLongPath(path);</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;            <span class="keywordflow">if</span> (!NativeMethods.DeleteFile(normalizedPath)) {</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                <span class="keywordflow">throw</span> LongPathCommon.GetExceptionFromLastWin32Error();</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;            }</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        }</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a904e925286ba584e187850b27a107946">  157</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a904e925286ba584e187850b27a107946">Move</a>(<span class="keywordtype">string</span> sourcePath, <span class="keywordtype">string</span> destinationPath) {</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;            <span class="keywordtype">string</span> normalizedSourcePath = LongPathCommon.NormalizeLongPath(sourcePath, <span class="stringliteral">&quot;sourcePath&quot;</span>);</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;            <span class="keywordtype">string</span> normalizedDestinationPath = LongPathCommon.NormalizeLongPath(destinationPath, <span class="stringliteral">&quot;destinationPath&quot;</span>);</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;            <span class="keywordflow">if</span> (!NativeMethods.MoveFile(normalizedSourcePath, normalizedDestinationPath))</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                <span class="keywordflow">throw</span> LongPathCommon.GetExceptionFromLastWin32Error();</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;        }</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;</div>
<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a693685fdcaa52fb901f57cced3c5f980">  237</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a693685fdcaa52fb901f57cced3c5f980">Copy</a>(<span class="keywordtype">string</span> sourcePath, <span class="keywordtype">string</span> destinationPath, <span class="keywordtype">bool</span> overwrite) {</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;            <span class="keywordtype">string</span> normalizedSourcePath = LongPathCommon.NormalizeLongPath(sourcePath, <span class="stringliteral">&quot;sourcePath&quot;</span>);</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;            <span class="keywordtype">string</span> normalizedDestinationPath = LongPathCommon.NormalizeLongPath(destinationPath, <span class="stringliteral">&quot;destinationPath&quot;</span>);</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;            <span class="keywordflow">if</span> (!NativeMethods.CopyFile(normalizedSourcePath, normalizedDestinationPath, !overwrite))</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;                <span class="keywordflow">throw</span> LongPathCommon.GetExceptionFromLastWin32Error();</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        }</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
<div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ab2343c0b5874ebc1c1a56d85c064cb2b">  306</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> FileStream <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ab2343c0b5874ebc1c1a56d85c064cb2b">Open</a>(<span class="keywordtype">string</span> path, FileMode mode, FileAccess access) {</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;            <span class="keywordflow">return</span> Open(path, mode, access, FileShare.None, 0, FileOptions.None);</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        }</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div>
<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a61e45f561e2025cb4fc2f99850dbed04">  375</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> FileStream <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a61e45f561e2025cb4fc2f99850dbed04">Open</a>(<span class="keywordtype">string</span> path, FileMode mode, FileAccess access, FileShare share) {</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;            <span class="keywordflow">return</span> Open(path, mode, access, share, 0, FileOptions.None);</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        }</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;</div>
<div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a1051481618a1e5d9128f06f1159207ec">  455</a></span>&#160;        <span class="keyword">public</span> <span class="keyword">static</span> FileStream <a class="code" href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a1051481618a1e5d9128f06f1159207ec">Open</a>(<span class="keywordtype">string</span> path, FileMode mode, FileAccess access, FileShare share, <span class="keywordtype">int</span> bufferSize, FileOptions options) {</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;    </div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;            <span class="keyword">const</span> <span class="keywordtype">int</span> DefaultBufferSize = 1024;</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;            <span class="keywordflow">if</span> (bufferSize == 0)</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;                bufferSize = DefaultBufferSize;</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;            <span class="keywordtype">string</span> normalizedPath = LongPathCommon.NormalizeLongPath(path);</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;            SafeFileHandle handle = GetFileHandle(normalizedPath, mode, access, share, options);</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;            <span class="keywordflow">return</span> <span class="keyword">new</span> FileStream(handle, access, bufferSize, (options &amp; FileOptions.Asynchronous) == FileOptions.Asynchronous);</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        }</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;        [SuppressMessage(<span class="stringliteral">&quot;Microsoft.Reliability&quot;</span>, <span class="stringliteral">&quot;CA2000:Dispose objects before losing scope&quot;</span>, Justification=<span class="stringliteral">&quot;False positive&quot;</span>)]</div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;        <span class="keyword">private</span> <span class="keyword">static</span> SafeFileHandle GetFileHandle(<span class="keywordtype">string</span> normalizedPath, FileMode mode, FileAccess access, FileShare share, FileOptions options) {</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;            NativeMethods.EFileAccess underlyingAccess = GetUnderlyingAccess(access);</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;           </div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;            SafeFileHandle handle = NativeMethods.CreateFile(normalizedPath, underlyingAccess, (uint)share, IntPtr.Zero, (uint)mode, (uint)options, IntPtr.Zero);</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;            <span class="keywordflow">if</span> (handle.IsInvalid)</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;                <span class="keywordflow">throw</span> LongPathCommon.GetExceptionFromLastWin32Error();</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;            <span class="keywordflow">return</span> handle;</div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;        }</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;        <span class="keyword">private</span> <span class="keyword">static</span> NativeMethods.EFileAccess GetUnderlyingAccess(FileAccess access) {</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;            <span class="keywordflow">switch</span> (access) {</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;                <span class="keywordflow">case</span> FileAccess.Read:</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;                    <span class="keywordflow">return</span> NativeMethods.EFileAccess.GenericRead;</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;                </div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;                <span class="keywordflow">case</span> FileAccess.Write:</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;                    <span class="keywordflow">return</span> NativeMethods.EFileAccess.GenericWrite;</div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;                <span class="keywordflow">case</span> FileAccess.ReadWrite:</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;                    <span class="keywordflow">return</span> NativeMethods.EFileAccess.GenericRead | NativeMethods.EFileAccess.GenericWrite;</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;                <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;                    <span class="keywordflow">throw</span> <span class="keyword">new</span> ArgumentOutOfRangeException(<span class="stringliteral">&quot;access&quot;</span>);</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;            }</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;        }</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;    }</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;}</div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_a61e45f561e2025cb4fc2f99850dbed04"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a61e45f561e2025cb4fc2f99850dbed04">Microsoft.Experimental.IO.LongPathFile.Open</a></div><div class="ttdeci">static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share)</div><div class="ttdoc">Opens the specified file. </div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00375">LongPathFile.cs:375</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_ab2343c0b5874ebc1c1a56d85c064cb2b"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ab2343c0b5874ebc1c1a56d85c064cb2b">Microsoft.Experimental.IO.LongPathFile.Open</a></div><div class="ttdeci">static FileStream Open(string path, FileMode mode, FileAccess access)</div><div class="ttdoc">Opens the specified file. </div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00306">LongPathFile.cs:306</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_a904e925286ba584e187850b27a107946"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a904e925286ba584e187850b27a107946">Microsoft.Experimental.IO.LongPathFile.Move</a></div><div class="ttdeci">static void Move(string sourcePath, string destinationPath)</div><div class="ttdoc">Moves the specified file to a new location. </div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00157">LongPathFile.cs:157</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_a1051481618a1e5d9128f06f1159207ec"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a1051481618a1e5d9128f06f1159207ec">Microsoft.Experimental.IO.LongPathFile.Open</a></div><div class="ttdeci">static FileStream Open(string path, FileMode mode, FileAccess access, FileShare share, int bufferSize, FileOptions options)</div><div class="ttdoc">Opens the specified file. </div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00455">LongPathFile.cs:455</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_a222d379ccf55dd15667184b551cc85fe"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a222d379ccf55dd15667184b551cc85fe">Microsoft.Experimental.IO.LongPathFile.Exists</a></div><div class="ttdeci">static bool Exists(string path)</div><div class="ttdoc">Returns a value indicating whether the specified path refers to an existing file. ...</div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00033">LongPathFile.cs:33</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_ad14fcaf22a5a12a851c9142be8582f8d"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#ad14fcaf22a5a12a851c9142be8582f8d">Microsoft.Experimental.IO.LongPathFile.Delete</a></div><div class="ttdeci">static void Delete(string path)</div><div class="ttdoc">Deletes the specified file. </div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00093">LongPathFile.cs:93</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html">Microsoft.Experimental.IO.LongPathFile</a></div><div class="ttdoc">Provides static methods for creating, copying, deleting, moving, and opening of files with long paths...</div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00014">LongPathFile.cs:14</a></div></div>
<div class="ttc" id="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file_html_a693685fdcaa52fb901f57cced3c5f980"><div class="ttname"><a href="class_microsoft_1_1_experimental_1_1_i_o_1_1_long_path_file.html#a693685fdcaa52fb901f57cced3c5f980">Microsoft.Experimental.IO.LongPathFile.Copy</a></div><div class="ttdeci">static void Copy(string sourcePath, string destinationPath, bool overwrite)</div><div class="ttdoc">Copies the specified file to a specified new file, indicating whether to overwrite an existing file...</div><div class="ttdef"><b>Definition:</b> <a href="_long_path_file_8cs_source.html#l00237">LongPathFile.cs:237</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_bb5e995590685548b7e11478911ee7c3.html">SystemSharp-Google-SVN</a></li><li class="navelem"><a class="el" href="dir_8deefa4467a62b572b52d238d562b104.html">SystemSharp</a></li><li class="navelem"><a class="el" href="dir_0e5a72156f8560bbc472a395da2569d6.html">SystemSharp</a></li><li class="navelem"><a class="el" href="dir_8fc67bbcc3526c8d762754b2841c296e.html">Microsoft</a></li><li class="navelem"><a class="el" href="dir_189ee8a8e9ab4f559109b12e56785d43.html">Experimental</a></li><li class="navelem"><a class="el" href="dir_60b5ea59483aca65819dd517ac50b181.html">IO</a></li><li class="navelem"><a class="el" href="_long_path_file_8cs.html">LongPathFile.cs</a></li>
    <li class="footer">Generated on Thu Dec 26 2013 14:21:40 for SystemSharp by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
  </ul>
</div>
</body>
</html>
